package com.api.apigateway.risk;

import java.util.Map;

/**
 * 请求上下文（供特征提取与规则引擎使用）
 * 运行逻辑：由 Filter 从请求中解析并填充关键字段。
 */
public class RiskContext {
    public Long userId;                 // 账号侧
    public String ak;                   // AccessKey（如有）
    public String ip;                   // 请求IP
    public String ua;                   // User-Agent
    public String method;               // GET/POST
    public String path;                 // 规范化后的路径模板，如 /api/weather/{city}
    public Map<String,String> headers;  // 头部
    public int querySizeBytes;          // URL 查询字符串大小
    public int bodySizeBytes;           // 请求体大小
    public int paramCount;              // 参数个数（近似）
    public long nowMillis;              // 当前时间戳
}
